﻿using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using ThouShaltNotBrick.Logic.GeneralObjects;

namespace ThouShaltNotBrick.Logic.GeneralObjects
{
    public sealed class Brick
    {
        #region Properties
        #region Row
        /// <summary>
        /// Zero-based row index. Row 0 is bottom row.
        /// </summary>
        public int Row { get; private set; }
        #endregion

        #region Column
        /// <summary>
        /// Zero-based column index. Column 0 is left-most column.
        /// </summary>
        public int Column { get; private set; }
        #endregion

        #region BrickType
        /// <summary>
        /// BrickType property.
        /// </summary>
        public BrickType BrickType { get; private set; }
        #endregion

        #region InitialBrickStateIndex
        /// <summary>
        /// InitialBrickStateIndex property.
        /// </summary>
        public int InitialBrickStateIndex { get; private set; }
        #endregion
        #endregion

        #region Constructors
        public Brick(
            int pRow,
            int pColumn,
            BrickType pBrickType,
            int pInitialBrickStateIndex)
        {
            Row = pRow;
            Column = pColumn;
            BrickType = pBrickType;
            InitialBrickStateIndex = pInitialBrickStateIndex;
        }
        #endregion
    }
}